<script setup>
	import { onMounted, onUnmounted } from 'vue'
	import AMapLoader from '@amap/amap-jsapi-loader'

	let map = null

	onMounted(() => {
		window._AMapSecurityConfig = {
			securityJsCode: '5e808557e67fac1a316edba3bbc27161'
		}
		AMapLoader.load({
			key: 'b1113278a29b0474c5b9105840afa8e9', // 申请好的Web端开发者Key，首次调用 load 时必填
			version: '2.0', // 指定要加载的 JSAPI 的版本，缺省时默认为 1.4.15
			plugins: ['AMap.MouseTool'] //需要使用的的插件列表，如比例尺'AMap.Scale'，支持添加多个如：['...','...']
		})
			.then((AMap) => {
				map = new AMap.Map('container', {
					// 设置地图容器id
					viewMode: '3D', // 是否为3D地图模式
					zoom: 14, // 初始化地图级别
					resizeEnable: true,
					center: [116.397428, 39.90923] // 初始化地图中心点位置
				})
				console.log(map)

				//异步加载工具条插件
				AMap.plugin('AMap.MouseTool', function () {
					//在回调函数中实例化插件，并使用插件功能
					var mouseTool = new AMap.ToolBar() //创建工具条插件实例
					map.addControl(mouseTool) //添加工具条插件到页面
				})
			})
			.catch((e) => {
				console.log(e)
			})
	})

	onUnmounted(() => {
		map?.destroy()
	})
</script>

<template>
	<div id="container"></div>
</template>

<style scoped>
	#container {
		width: 100%;
		height: 800px;
	}
</style>
